/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package restaurante.cdp;

import javax.persistence.Entity;
import restaurante.cdp.enuns.SituacaoPedido;
import restaurante.cdp.interfaces.EntregadorPedido;
import restaurante.cdp.interfaces.EnviadorPedido;
import restaurante.cdp.interfaces.Observador;

/**
 *
 * @author a20101bsi0623
 */
@Entity
public class Garcom extends Funcionario implements EnviadorPedido, EntregadorPedido, Observador{
    private Integer numEntregas;
    private Integer numPedidos;

    public Garcom() {
        numEntregas = 0;
        numPedidos = 0;
    }
    
    

    public Integer getNumEntregas() {
        return numEntregas;
    }

    public void setNumEntregas(Integer numEntregas) {
        this.numEntregas = numEntregas;
    }

    public Integer getNumPedidos() {
        return numPedidos;
    }

    public void setNumPedidos(Integer numPedidos) {
        this.numPedidos = numPedidos;
    }
    
  
    

    @Override
    public void enviarPedidoCozinha(Pedido p) {
        System.out.println("\nGarcom: Pedido enviado para a cozinha");
        this.numPedidos++;
    }

    @Override
    public void entregar(Pedido pedido) {
        pedido.setSituacao(SituacaoPedido.ENTREGUE);
        pedido.getCliente().setSituacao(pedido);
        this.numEntregas++; 
        //System.out.print("\nGarcom: Pedido "+ pedido.getNumeroLista()+" entregue para o Cliente: ");
        pedido.getCliente().consultaCliente();
        System.out.println("\n");
    }


    @Override
    public void atualizar() {
        System.out.println("Atualizou");
    }
    
    @Override
    public void consultaFuncionario() {
        System.out.println("\n--Funcionario--");
        System.out.println(">Nome: "+this.getNome());
        System.out.println(">Tipo: Garcom");
        System.out.println(">Numero de pedidos realizados: "+this.getNumPedidos());
        System.out.println(">Numero de pedidos entregues: "+this.getNumEntregas());
    }

    @Override
    public void consulta() {
        this.consultaFuncionario();
    }
    
    
    
}
